﻿<p>The window is a building element that is predominately used to provide natural light and fresh air. It includes vertical opening but also horizontal opening such as skylights or light domes. It includes constructions with swinging, pivoting, sliding, or revolving panels and fixed panels. A window consists of a lining and one or several panels.</p>

<blockquote class="extDef">NOTE&nbsp; Definition according to ISO 6707-1<br> 
Construction for closing a vertical or near vertical opening in a wall or pitched roof that will admit light and may admit fresh air.</blockquote>

<p>The <em>IfcWindow</em> defines a particular occurrence of a window inserted in the spatial context of a project. A window can:</p>
<ul>
<li>be inserted into an <em>IfcOpeningElement</em> using the <em>IfcRelFillsElement</em> relationship, then the <em>IfcWindow</em> has an inverse attribute <em>FillsVoids</em> provided,
<blockquote class="note">NOTE&nbsp; Model View Definitions or implementer agreements may restrict the relationship to only include one window (or door) into one opening.</blockquote>
</li>
<li>be part of an element assembly, often an <em>IfcCurtainWall</em>, using the <em>IfcRelAggregates</em> relationship, then the inverse attribute <em>Decomposes</em> is provided.</li>
<li>or be a "free standing" window, then the <em>IfcWindow</em> has no inverse attributes <em>FillsVoids</em> or <em>Decomposes</em> provided.</li>
</ul>

<p><p>There are two main representations for window occurrences:</p>
<ul>
<li><em>IfcWindow</em> with a shape representation having RepresentationIdenfifier='Profile' is used for all occurrences of windows, that have a 'Profile' shape representation defined to which a set of shape parameters for lining and framing properties apply. Additionally it requires the provision of an <em>IfcWindowType</em> that references one <em>IfcWindowLiningProperties</em> and on to many <em>IfcWindowPanelProperties</em>.
<blockquote class="note">NOTE&nbsp; The entity <em>IfcWindowStandardCase</em> has been deprecated.</blockquote>
</li>
<li><em>IfcWindow</em> used for all other occurrences of windows, particularly for windows having only 'Brep', or 'SurfaceModel' geometry without applying shape parameters.</li>
</ul>
<p>The actual parameter of the window and/or its shape is defined at the <em>IfcWindow</em> as the object occurrence definition, or by the <em>IfcWindowType</em> as the object type definition . The following parameters are provided:</p>
<ul>
<li>at the <em>IfcWindow</em> for occurrence specific parameters. The <em>IfcWindow</em> specifies:</li>
<li style="list-style: none">
<ul>
<li>the window width and height</li>
<li>the window opening direction (by the y-axis of the <em>ObjectPlacement</em>)<br>
<br></li>
</ul>
</li>
<li>at the <em>IfcWindowType</em> to which the <em>IfcWindow</em> is related by the inverse relationship <em>IsTypedBy</em> pointing to <em>IfcRelDefinesByType</em>, for type parameters common to all occurrences of the same type.</li>
<li style="list-style: none">
<ul>
<li>the partitioning type (single panel, double panel, tripel panel, more panels)</li>
<li>the operation type (swing, tilt and turn, pivot revolve, fixed case ment, etc.)</li>
<li>the window panel hinge side (by using two different styles for right and left opening windows)</li>
<li>the construction material type</li>
<li>the particular attributes for the lining by the <em>IfcWindowLiningProperties</em></li>
<li>the particular attributes for the panels by the <em>IfcWindowPanelProperties</em><br></li>
</ul>
</li>
</ul>
<blockquote class="history">HISTORY&nbsp; New entity in IFC1.0.</blockquote>
<blockquote class="change-ifc2x4">IFC4 CHANGE&nbsp; The attributes <em>PredefinedType</em> and <em>OperationType</em> are added, the applicable type object has been changed to <em>IfcDoorType</em>.</blockquote>

<p class="use-head">Parameteric Representation using parameters at 
<em>IfcWindowType</em></p>

<p>The parameters, which define the shape of the
<em>IfcWindow</em>, are given at the <em>IfcWindowType</em> and the
property sets, which are included in the <em>IfcWindowType</em>.
The <em>IfcWindow</em> only defines the local placement. The overall size of the <em>IfcWindow</em> to
be used to apply the lining or panel parameter provided by the
<em>IfcWindowType</em> is determined by the IfcShapeRepresentation
with the RepresentationIdentifier = 'Profile'. Only in case of an
<em>IfcWindow</em> inserted into an <em>IfcOpeningElement</em> using
the <em>IfcRelFillsElement</em> relatioship, having a horizontal
extrusion (along the y-axis of the <em>IfcDoor</em>), the overall
size is determined by the extrusion profile of the
<em>IfcOpeningElement</em>.</p>



<p>Figure 4 illustrates the insertion of a window into the <em>IfcOpeningElement</em> by creating an instance of
<em>IfcWindow</em> with <em>PartitioningType = DoublePanelHorizontal</em>. The parameters <em>OverallHeight</em> and <em>OverallWidth</em> show the extent of the window in the positive Z and X axis of the local placement of the window. The lining and the transom are created by the given parameters.</p>



<table>
<tr><td><img src="../../../figures/ifcwindow-layout1.gif" alt="window 1" border="0" height="299" width="356"></td></tr>
<tr><td><p class="figure">Figure 4 &mdash; Window placement</p></td></tr>
</table>



<p>Figure 5 illustrates the final window (DoublePanelHorizontal) with first panel having <em>PanelPosition = TOP</em>, <em>OperationType = BOTTOMHUNG</em> and second panel having <em>PanelPosition = BOTTOM</em> and <em>OperationType = TILTANDTURNLEFTHAND</em>.</p>



<table>
<tr><td><img src="../../../figures/ifcwindow-layout2.gif" alt="window 2" border="0" height="299" width="356"></td></tr>
<tr><td><p class="figure">Figure 5 &mdash; Window planes</p></td></tr>
</table>



<p class="use-head">Window opening operation by window type</p>

<p>The parameters that defines the shape of the <em>IfcWindow</em>,
are given at the <em>IfcWindowType</em> and the property sets,
which are included in the <em>IfcWindowType</em>. The
<em>IfcWindow</em> only defines the local placement which
determines the opening direction of the window. The overall
layout of the <em>IfcWindow</em> is determined by
its <em>IfcWindowType.PartitioningType</em>. Each window panel has
its own operation type, provided by
<em>IfcWindowPanelProperties.OperationType</em>. All window panels
are assumed to open into the same direction (if relevant for the
particular window panel operation. The hindge side (whether a
window opens to the left or to the right) is determined by the
<em>IfcWindowPanelProperties</em><em>.OperationType</em>.</p>
<blockquote class="note">NOTE&nbsp;  There are different conventions in
different countries on how to show the symbolic presentation of
the window panel operation (the "triangles"). Either as seen from
the exterior, or from the interior side. The following figures
show the symbolics from the exterior side (the convention as used
predominately in Europe).</blockquote>

<p>Figure 6 illustrates window operation types.</p>



<table><tr><td><table border="1" cellpadding="2" cellspacing="2">
<tbody>
<tr valign="top">
<td align="left" valign="top"><small><img alt="fig 1" src=
"../../../figures/ifcwindow-fig01.gif" height="121" width=
"301"><br></small></td>
<td align="left" valign="top">
<p><small>The window panel (for side hung windows) opens always
into the direction of the positive Y axis of the local placement.
The determination of whether the window opens to the left or to
the right is done at
<em>IfcWindowPanelProperties.OperationType</em>. Here it is a left
side opening window given by <em>OperationType</em> =
SideHungLeftHand.</small></p>
</td>
</tr>
<tr>
<td><small><img alt="fig 2" src="../../../figures/ifcwindow-fig02.gif"
height="121" width="301"><br></small></td>
<td valign="top">
<p><small>If the window should open to the other side, then the
local placement has to be changed. It is still a left hung
window, given by <em>IfcWindowPanelProperties.OperationType</em>
= SideHungLeftHand.</small></p>
</td>
</tr>
<tr>
<td><img alt="fig 3" src="../../../figures/ifcwindow-fig03.gif" height=
"121" width="301"></td>
<td valign="top">
<p><small>If the window panel (for side hung windows) opens to
the right, a separate window panel style needs to be used (here
<em>IfcWindowPanelProperties.OperationType</em>
= SideHungRightHand) and it always opens into the direction of
the positive Y axis of the local placement. </small></p>
</td>
</tr>
<tr valign="top">
<td align="left" valign="top"><small><img alt="fig 4" src=
"../../../figures/ifcwindow-fig04.gif" height="121" width=
"301"><br></small></td>
<td align="left" valign="top">
<p><small>If the window should open to the other side, then the
local placement has to be changed. It is still a right hung
window, given by <em>IfcWindowPanelProperties.OperationType</em>
= </small><small>SideHungRightHand.</small></p>
<small>.</small></td>
</tr>
</tbody>
</table>

</td></tr>
<tr><td><p class="figure">Figure 6 &mdash; Window operations</p></td></tr>
</table>


